/* Copyright (c) 2004-2024 Peigen.info. All rights reserved. */

package info.peigen.hotpot.business.coupon.core.domain;

import info.peigen.hotpot.business.coupon.facade.enums.PromotionType;
import info.peigen.hotpot.common.core.domain.DomainObject;
import info.peigen.hotpot.common.core.util.IdUtil;
import lombok.*;
import lombok.experimental.Accessors;
import lombok.experimental.FieldDefaults;
import lombok.experimental.SuperBuilder;

import java.util.Date;

/**
 * <b>(Promotion)</b>
 *
 * @author Peigen
 * @version 1.0.0
 * @since 2022/7/26
 */
@EqualsAndHashCode(callSuper = true)
@SuperBuilder
@Data
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults(level = AccessLevel.PRIVATE)
@Accessors(chain = true)
public class Promotion extends DomainObject {
    @Builder.Default
    String promotionId = IdUtil.id();
    /** 促销开始时间 */
    Date          promotionStartTime;
    /** 促销结束时间 */
    Date          promotionEndTime;
    /** 活动限购数量 */
    Integer       promotionPerLimit;
    /** 促销类型：0->没有促销使用原价;1->使用促销价；2->使用会员价；3->使用阶梯价格；4->使用满减价格；5->限时购 */
    PromotionType promotionType;
}